#include <stdio.h>
#include "machine.h"
#include "inst.h"

entry fib()
{
  new_env(1, 0);

  ildc(0);
  load();
  ildc(0);
  iequal();
  jz(label1);

  ildc(0);
  ret();

 label1:
  ildc(0);
  load();
  ildc(1);
  iequal();
  jz(label2);

  ildc(1);
  ret();

 label2:
  ildc(0);
  load();
  ildc(1);
  isub();
  call(fib);

  ildc(0);
  load();
  ildc(2);
  isub();
  call(fib);

  iadd();
  ret();

}



entry sugar_main()
{
  new_env(0,1);
  ildc(4);
  builtin();
  call(fib);
  ildc(2);
  builtin();
  return;
}

static_area_initialization()
{
  region_table[0] = 0;
}
